var sdui = {};

function main() {

    let ds=pe.Dataset('modis/mod09cmg', 20230901000000);

    // if (sdui && sdui.opIds) {
    //     for (i = 0; i < sdui.opIds.length; i++) {
    //         //let geomLine = pe.geomById(sdui.opIds[i].opId+"");//buffer width unit in degree.
    //     }
    // }


    let ds2 = ds.forEachPixel(function (val, index) {
        let v = val[0];
        // [-36, [128, 0, 124]],
        // [-32, [0, 47, 134]],
        // [-28, [26, 92, 166]],
        // [-24, [32, 117, 210]],
        // [-20, [60, 160, 240]],
        // [-16, [117, 207, 255]],
        // [-12, [151, 255, 244]],
        // [-8, [189, 249, 255]],
        // [-4, [242, 255, 255]],
        // [0, [223, 255, 217]],
        // [4, [196, 255, 183]],
        // [8, [186, 254, 131]],
        // [12, [252, 254, 156]],
        // [16, [255, 243, 196]],
        // [20, [255, 220, 168]],
        // [24, [255, 175, 117]],
        // [28, [253, 135, 132]],
        // [32, [236, 91, 95]],
        // [35, [255, 51, 51]],
        // [37, [201, 1, 1]],
        // [40, [153, 51, 1]],
        if (v == -9999) return [0, 0, 0, 0]
        else if (v < -36) return [128, 0, 124, 255];
        else if (v < -32) return [0, 47, 134, 255];
        else if (v < -28) return [26, 92, 166, 255];
        else if (v < -24) return [32, 117, 210, 255];
        else if (v < -20) return [60, 160, 240, 255];
        else if (v < -16) return [117, 207, 255, 255];
        else if (v < -12) return [151, 255, 244, 255];
        else if (v < -8) return [189, 249, 255, 255];
        else if (v < -4) return [242, 255, 255, 255];
        else if (v < 0) return [223, 255, 217, 255];
        else if (v < 4) return [196, 255, 183, 255];
        else if (v < 8) return [186, 254, 131, 255];
        else if (v < 12) return [252, 254, 156, 255];
        else if (v < 16) return [255, 243, 196, 255];
        else if (v < 20) return [255, 220, 168, 255];
        else if (v < 24) return [255, 175, 117, 255];
        else if (v < 28) return [253, 135, 132, 255];
        else if (v < 32) return [236, 91, 95, 255];
        else if (v < 35) return [255, 51, 51, 255];
        else if (v < 37) return [201, 1, 1, 255];
        else return [153, 51, 1, 255];


    });

    return ds2;
}
